import { createRouter, createWebHistory } from 'vue-router'

// 导入页面组件
const Dashboard = () => import('../views/Dashboard.vue')
const Login = () => import('../views/Login.vue')
const Register = () => import('../views/Register.vue')

// 导入新创建的页面组件
const HomeView = () => import('../views/HomeView.vue')
const JoinClubView = () => import('../views/JoinClubView.vue')
const ActivityCenterView = () => import('../views/ActivityCenterView.vue')
const MyClubsView = () => import('../views/MyClubsView.vue')

// 保留原有页面组件，以备需要
const HomePage = () => import('../pages/HomePage.vue')
const ContentPage = () => import('../pages/ContentPage.vue')
const MyEventsPage = () => import('../pages/MyEventsPage.vue')

// 创建路由实例
const router = createRouter({
  history: createWebHistory(),
  routes: [
    {
      path: '/',
      redirect: '/dashboard/home' // 默认重定向到首页
    },
    {
      path: '/login',
      name: 'login',
      component: Login,
    },
    {
      path: '/register',
      name: 'register',
      component: Register,
      meta: {
        title: '注册 - 社团管理系统'
      }
    },
    {
      path: '/dashboard',
      name: 'dashboard',
      component: Dashboard,
      // 根据用户角色显示不同的子路由
      children: [
        // 所有用户都可以访问的页面
        {
          path: '',
          redirect: 'home'
        },
        { path: 'home',
          name: 'home',
          component: HomeView,
          meta: {
            title: '首页 - 社团管理系统'
          }
        },
        {
          path: 'profile',
          name: 'profile',
          component: ContentPage,
          props: { pageTitle: '个人信息管理' },
          meta: {
            title: '个人信息管理 - 社团管理系统'
          }
        },
        { path: 'clubs',
          name: 'clubs',
          component: MyClubsView,
          meta: {
            title: '我的社团 - 社团管理系统'
          }
        },
        { path: 'join-club',
          name: 'join-club',
          component: JoinClubView,
          meta: {
            title: '加入社团 - 社团管理系统'
          }
        },
        { path: 'activity-center',
          name: 'activity-center',
          component: ActivityCenterView,
          meta: {
            title: '活动中心 - 社团管理系统'
          }
        },
        {
          path: 'my-events',
          name: 'my-events',
          component: MyEventsPage,
          meta: {
            title: '我的社团活动 - 社团管理系统'
          }
        },
        // 仅管理员可访问的页面
        {
          path: 'activities',
          name: 'activities',
          component: ContentPage,
          props: { pageTitle: '活动管理' },
          meta: {
            title: '活动管理 - 社团管理系统'
          }
        },
        {
          path: 'members',
          name: 'members',
          component: ContentPage,
          props: { pageTitle: '成员管理' },
          meta: {
            title: '成员管理 - 社团管理系统'
          }
        }
      ]
    },
    // 404页面
    {
      path: '/:pathMatch(.*)*',
      name: 'not-found',
      redirect: '/dashboard/home' // 未找到页面重定向到首页
    }
  ]
})

// 简化的路由守卫 - 只设置页面标题，不做任何认证检查
router.beforeEach((to, from, next) => {
  // 设置页面标题
  document.title = to.meta.title || '社团管理系统'
  
  // 直接放行所有页面访问
  next()
})

export default router